home *** CD-ROM | disk | FTP | other *** search
- 0. Inhalt 1
- _______________________________________________________
-
- 1. Einführung
-
- 1.1 Über Megamax Modula 1 - 1
- 1.2 Über dieses Handbuch 2
- 1.3 Kurze Modula-Bibliographie 3
- Niklaus Wirth: Programmieren in Modula-2 3
- Dal Cin/Lutz/Risse: Programmierung in Modula-2 3
- Richard Gleaves: Modula-2 für Pascal-Programmierer 4
- Dürholt, Schnur: Atari ST Modula-2 Programmierhandbuch 4
- Dieter & Jürgen Geiß: Softwareentwicklung auf dem Atari ST 5
- Dieter & Jürgen Geiß: Vom Anfänger zum GEM-Profi 5
- Jankowski, Rabich, Reschke: Das Atari-ST Profibuch 5
- 1.4 Megamax Modula: das Konzept 6
- Implementations- und Definitionsmodule 6
- "Loadtime Linking" 7
- Benutzung des Linkers 8
- 1.5 Unser Service 9
- Megamax Modula Exchange - MeMoX 9
- Mailbox 10
- Soforthilfe bei Fehlern 11
- Quelltexte der Bibliothek 12
- Assembler für 68020/30 und 68881/2 12
- Portable Bibliotheken für den Atari ST / TT 13
- ATD - Abstrakte Datentypen 14
- Einbindung von Funktionen der Sprache C 14
- 1.6 Anmerkungen zu den Lizenzvereinbarungen 15
- Software 15
- Handbuch 15
- Haftungsausschluß 16
-
- 2. Bedienung des Megamax Modula-Systems
-
- 2.1 Los geht's - Installieren und Ausprobieren 2 - 1
- Voraussetzungen 1
- Die Modula-Disketten 2
- Installation ohne Festplatte 4
- Installation mit Festplatte 5
- Speicherplatzmangel? 6
- Mehr Geschwindigkeit... 7
- Namenskonventionen 8
- Mathe-Koprozessor (FPU, SFP004, Atari TT 8
- Ein erstes Programm 9
- 2.2 Shell 2 - 15
- Aufruf der Shell 15
- Das Shell-Desktop 15
- Ausführen von Programmen und anderen Dateien 18
- Ausführen speziell von Code-Dateien (Programme, Module) 19
- Programmaufruf und -abbruch bei gelinkten Programmen 22
- 0. Inhalt 2
- _______________________________________________________
-
-
- Das Binden der Module 22
- Resident-Laden von Code-Dateien (Programme, Module) 25
- Laden gelinkter Programme 26
- Menüzeile der Shell 28
- Shell-Parameter 29
- Umgebungsinformationen 30
- Tasten-Funktionen 31
- Batch-Dateien 32
- Suchpfade und Pfadlisten 36
- Umgang mit mehreren Projekten 39
- Fehlermeldungen der Shell 41
- 2.3 Editor 2 - 43
- Einführung 43
- Wahl des Editors 43
- Vorbereitungen und Parameter 45
- Aufruf des Editors 46
- 2.4 Compiler 2 - 47
- Aufruf des Compilers 47
- Die erzeugten Dateien 48
- Übersetzungsfehler 48
- Parameter 49
- Definitions-Codes: Bibliothek und Komprimierung 50
- Dekomprimieren der Dateien in der Library 51
- Protokoll 51
- 2.5 Debugger 2 - 53
- Übersetzen im Debug-Modus 53
- Ausführen im Debug-Modus 54
- Scanner - Suchen der Fehlerposition 55
- Manuelles Scannen 56
- 2.6 Linker 2 - 59
- Funktion 59
- Bedienung 59
- Fehlermeldungen 60
- Parameter 61
- Treiber- bzw. Konfigurationsmodule 61
- Komprimierung (Optimierung) des erzeugten Programms 63
- Stack-Größe 65
- Binden von Accessory-Programmen 65
- Arbeitsweise des Linkers 65
- 2.7 Make und ModRef 2 - 69
- Prinzip eines Make 69
- Arbeitsweise von Make 69
- Erzeugung einer Make-Datei (ModRef) 71
- Anwendung von Make 72
- Alle Module übersetzen (Build) 73
- Fehlermeldungen des Make 73
- Syntax der Make-Datei 74
- 0. Inhalt 3
- _______________________________________________________
-
-
- 3. Programmieren in Megamax Modula-2
-
- 3.1 Sprachumfang 3 - 1
- Wirthscher Standard (PIM-Standard) 1
- ISO-Standard 2
- Standard gegen Erweiterungen 3
- Die Megamax-Implementation: Einschränkungen und Erweiterungen 4
- Standardprozeduren 5
- Standardtypen: Größe und Wertebereich 8
- Standardkonstanten 8
- Typen CARDINAL und INTEGER 8
- Typen SHORTCARD und SHORTINT 9
- Typen LONGCARD und LONGINT 9
- Typen REAL und LONGREAL 10
- Funktionen SHORT und LONG 11
- Kompatibilität von ADDRESS, POINTER, LONGCARD, Opaque 11
- Angabe von Speichergrößen 11
- Funktionen MIN und MAX 12
- Exportlisten in Definitionsmodulen 12
- Syntax eines Variant-Records 12
- Unterbereichs-Deklaration 13
- FORWARD-Deklaration 13
- Externe Variable 13
- Funktions-Prozeduren 14
- Lokale Prozeduren als aktuelle Parameter 15
- Zuweisungen von LONGCARD/-INT auf SHORTCARD/-INT 16
- Bedingungen für Laufvariable von FOR-Schleifen 16
- SET-Konstrukturen 17
- Mehrdimensionale offene Felder 18
- Größe von INTEGER und CARDINAL 18
- Datengröße bei Open Arrays 18
- Aggregate (value constructor) 19
- Verkettung von String-Konstanten 20
- Funktion LENGTH 21
- Funktionen FLOAT und LFLOAT 21
- Funktion INT 21
- Kompatibilität bei Open Arrays 22
- Kompatibilität bei String-Zuweisungen 22
- REF- (CONST-) Parameter 22
- 3.2 Interne Datenformate 3 - 25
- Ablage von Strukturen im Speicher 25
- SETs und BITSET 25
- LONG-Werte 25
- Packen von BYTE-Daten 26
- 3.3 Das SYSTEM-Modul 3 - 27
- Typ ADDRESS 28
- Typen LONGWORD, WORD, BYTE und LOC 28
- 0. Inhalt 4
- _______________________________________________________
-
-
- Funktionen ADR und TSIZE 29
- Konstante CompilerVersion und CompilerSubVersion 29
- Type BITNUM und Funktionen SHIFT und ROTATE 29
- Funktion CAST 30
- Funktion CADR 31
- Prozeduren CODE, LOAD und STORE 31
- Prozeduren CALLSYS und CALLEXT 32
- Prozeduren NEWPROCESS, TRANSFER und LISTEN 33
- Prozedur IOTRANSFER 34
- Prozedur IOCALL 34
- 3.4 Compilerdirektiven 3 - 36
- Syntax einer Direktive in der Compiler-Parameter-Box 36
- Syntax einer Direktive im Programmtext 37
- Groß-/Kleinschreibung (Case Sensitivity) 37
- Bereichsprüfungen (Range Checking) 38
- Stackplatz-Prüfung (S) 38
- Testhilfen (Debugging, E) 39
- Lokale Prozeduren als aktuelle Parameter (H) 40
- Erweiterte Syntax (A) 40
- Zuweisung LONGCARD/-INT auf SHORTCARD/-INT (K) 40
- Automatische Register-Optimierung bei FOR-Schleifen (J) 40
- Optimierte Rückgabe von Funktionsergebnissen im Register (Z) 41
- SET-Format (U) 41
- Register-Variable (Reg) 42
- Mathe-Koprozessor (FPU) 43
- Ausgaben des Compilers (Quiet Compilation) 44
- Zugriff auf lokale Variable (Linking) 45
- Wahl der Namensendung (Extension) 45
- Einschieben externer Textfiles (Include File) 46
- Bibliotheksvorgabe (Use Library) 47
- Protokoll mit Statistik(V, P) 47
- Bedingte Compilierung (?) 47
- System-Module mit "shared data" (Y) 48
- Entfernen nicht benötigter Module beim optimierten Linken (B) 49
- Compiler-Warnungen (W) 49
- Übersicht: Compilerdirektiven 50
-
- 4. Der 68000 Assembler
-
- 4.1 Grundlagen und Syntax 4 - 1
- Assembler-Anweisungen in Modula-Programmen 1
- Aufbau von Assembleranweisungen 2
- Befehlscodes und Adressierungsarten 2
- Label (Marken) 3
- Relative Sprünge (Bcc & BSR) 4
- 4.2 Einfache Assembler-Anwendungen 5
- Belegung der CPU-Register 5
- 0. Inhalt 5
- _______________________________________________________
-
-
- Zugriff auf globale Variable 5
- Zugriff auf lokale Variable 7
- 4.3 Assembler für Experten 4 - 8
- Pseudo-Opcodes 8
- Belegung der CPU-Register 9
- Zugriff auf Modula-Konstanten 10
- Zugriff auf globale Variable. speziell ARRAYs 11
- Zugriff auf lokale Variable 11
- Fehlerprüfungen vom Assembler 13
- Aufruf globaler Prozeduren, Parameterübergabe 13
- Aufruf lokaler Prozeduren 15
- Übernahme von Parametern 16
-
- 5. Modulbibliothek
-
- 5.1 Allgemeines zur Bibliothek 5 - 1
- Funktionsübersicht 1
- Vorhandene Module 2
- Allgemeiner Hinweis - Sys-Funktionen 6
- Übernahme (Portierung) fremder Modula-2 Programme 7
- Strings 7
- Ein-/Ausgabe 8
- Hinweise zu den Quelltexten... 10
- ...MM2Shell 10
- ...GEMError & SimpleError 11
- ...MOSConfig 11
- Bedienung der Eingabefunktionen 11
- Eingabeformate bei Convert & StrConv 12
- Hinweise zu GEMDOSIO und TOSIO 12
- Hinweise zu ALLOCATE 12
- Hinweise zu AES-/VDI-Funktionen (FormAlert, ...Mouse) 13
- Der richtige Gebrauch der UpdateWindow-Funktion... 13
- ...bei der Accessory-Initialisierung 13
- ...bei Timer-Events mit GEMDOS-Aufrufen 13
- Hinweise zur Benutzung der FPU in Accessories 14
- 5.2 Programme, Module und Prozesse 5 - 15
- Das Modulkonzept 15
- Vom Modul zum gelinkten Programm 16
- Prozesse 18
- Prozeßkontrolle 22
- Prozeßinformationen 23
- 5.3 Laufzeitfehler-Behandlung 5 - 25
- Was sind Laufzeitfehler? 25
- Fehlergruppen 26
- Allgemeine Laufzeitfehler 27
- Dateifehler 30
- 0. Inhalt 6
- _______________________________________________________
-
-
- Fehlerbehandlung mit dem Modul EasyExceptions 31
- Accessories 32
- 5.4 Dateisystem 5 - 33
- Dateimodi (Binär/Text) 33
- Öffnen einer Datei 34
- Ein-/Ausgabe von Daten 35
- Dateiende-Behandlung 36
- Diverse Dateifunktionen (Modul 'Files') 40
- Fehlerbehandlung im Dateisystem 41
- Unterschiede zwischen Binär- und Textmodus 42
- Modul 'InOut' 43
- Konfiguration eigener Unittreiber 44
- 5.5 Grafikdarstellung im Atari ST 5 - 45
- Einführung 45
- 5.6 Line A - Routinen 47
- Der Fontheader 47
- Die Line A - Variablen 49
- Der Deskriptor für BitBlockTransfer 52
- 5.7 GEM 54
- VDI 54
- AES 55
- Mega-GEM 67
- Ganz unten... 68
-
- Anhang
-
- A.1 Fehlermeldungen des Compilers
- A.2 Fehlermeldungen zur Laufzeit und des Loaders
- A.3 Interne Datenformate
- A.4 Registerbelegung zur Laufzeit
- A.5 Übersicht Compileroptionen
- A.6 Backus-Naur-Notation
- A.7 Modula-Syntaxdiagramme
- A.8 Modula-Syntax in Backus-Naur-Notation
- A.9 Aufbau der Codemodule
- A.10Begriffserläuterungen
- A.11 Anpassen alter Megamax-Programme (Systemversion 1)
-
- B. Texte der Definitionsmodule
-
- C.1 Dokumentation zum Editor GEP ED
- _
- C.2 Dokumentation zum Editor GME
- C.3 Dokumentation zum Resource Construction Program
-
- D. Übersicht aller Bezeichner der Bibliothek
-
- E. Index
-